home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / doors_1 / doordr50.zip / FOSSILDR.DOC < prev    next >
Text File  |  1989-12-04  |  4KB  |  75 lines

  1. Fossil Driver interface routines for Turbo Pascal 5.5   VERSION #3
  2. By Scott M Baker           December 4, 1989
  3.  
  4.   These routines are intended to be an interface to Fossil drivers for
  5. the purpose of serial communication. A fossil driver is a serial driver
  6. used by the fido/opus/seadog bbs systems, but it is very useful for things
  7. such as protocol drivers, term programs, etc. Most fossil drivers are memory
  8. resident so once they are loaded, they stay loaded. They work through int
  9. 14h and provide a number of useful functions including buffering of the com
  10. port. I suggest obtaining "X00V1_11.arc" (or greater version) or
  11. "Opuscomm.arc" each of which is a good fossil driver. The X00 docs will
  12. contain doccumentation for the routines listed below so I won't go into
  13. detail here.
  14.  
  15. ---------------------------------------------------------------------------
  16.  
  17. UNIT DDFOSSIL;
  18.  
  19. INTERFACE
  20.  
  21. var
  22.  port_num: integer;              { VERY IMPORTANT. Set this to 0 for your }
  23.                                  { first com port, 1 for your second,     }
  24.                                  { 2 for your third, etc. If you end up   }
  25.                                  { with problems, it'll probably be       }
  26.                                  { because you improperly set this var    }
  27.  
  28. procedure async_send(ch: char);
  29. procedure async_send_string(s: string);
  30. function async_receive(var ch: char): boolean;
  31. function async_carrier_drop: boolean;
  32. function async_carrier_present: boolean;
  33. function async_buffer_check: boolean;
  34.  
  35. function async_init_fossil: boolean;  { Call this routine to initialize the }
  36.                                       { fossil driver. It MUST be called    }
  37.                                       { before any others! It will return   }
  38.                                       { TRUE if the fossil is present or    }
  39.                                       { FALSE if it is not.                 }
  40.  
  41. procedure async_deinit_fossil;        { This MUST be called before exiting  }
  42.                                       { your program and probably before    }
  43.                                       { dropping to DOS in most instances.  }
  44.                                       { If it isn't called, the interrupt   }
  45.                                       { vectors will be left open and       }
  46.                                       { strange things will happen. I sug-  }
  47.                                       { gest putting it in an exit proc.    }
  48. procedure async_flush_output;
  49. procedure async_purge_output;
  50. procedure async_purge_input;
  51. procedure async_set_dtr(state: boolean);
  52. procedure async_watchdog_on;
  53. procedure async_watchdog_off;
  54. procedure async_warm_reboot;
  55. procedure async_cold_reboot;
  56. procedure async_Set_baud(n: integer);
  57.  
  58. -----------------------------------------------------------------------------
  59.  
  60.   If you should find these routines useful in any way, then please send me a
  61. donation that I may use to further my work in these areas. Also, if you use
  62. this code in a program of yours, then I request you credit my work in some
  63. way.
  64.  
  65.             Scott Baker               The Not-Yet-Named bbs
  66.      6433 Tierra Catalina #48             602-577-3650
  67.          Tucson, AZ 85718              300/1200/2400 baud
  68.            602-577-3515                 Tucson, Arizona
  69.  
  70. Revision history
  71. ----------------
  72.     2.00 - Fixed comm-port 2+
  73.     3.00 - Totally new version included for use with DoorDriver
  74.          - unit renamed from "FOSSILDR.TPU" to "DDFOSSIL.TPU"
  75.